/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */

package service;

import conexion.Conexion;
import entidades.Contacto;
import entidades.miembros.Socio;
import java.awt.image.BufferedImage;
import javax.ws.rs.Consumes;
import javax.ws.rs.GET;
import javax.ws.rs.HeaderParam;
import javax.ws.rs.POST;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.core.MediaType;
import org.eclipse.persistence.internal.oxm.conversion.Base64;
import utils.GeneradorDatos;
import utils.UtilesImage;

/**
 *
 * @author fcarou
 */
@Path ("pruebas")
public class RestPrueba
{
    @POST
    @Path ("post")
    @Produces (MediaType.APPLICATION_JSON)
    @Consumes (MediaType.APPLICATION_JSON)
    public String pruebaPost (String nombre, @HeaderParam("codigo") String codigo)
    {
        System.out.println(nombre);
        return codigo.toUpperCase() + " " + nombre;
    }
    
    @POST
    @Path ("postContacto")
    @Produces (MediaType.APPLICATION_JSON)
    @Consumes (MediaType.APPLICATION_JSON)
    public String getContacto (Contacto contacto)
    {
        throw new NumberFormatException ();
    } 
    
    @GET
    @Path ("hola")
    public String hola ()
    {
        return "Hola mundo!!";
    }
    
    @GET
    @Produces (MediaType.APPLICATION_JSON)
    @Path ("imagen")
    public BufferedImage getImagen () 
    {
        Socio socio = Conexion.getConexion().getEntityManager().find(Socio.class, (long)3);
        
        BufferedImage buff = UtilesImage.ByteArrayAImage(socio.getDatosPersonales().getImagen());
        
        
        
        return UtilesImage.ByteArrayAImage(socio.getDatosPersonales().getImagen());
    }
    
    @GET
    @Path("inventar")
    public void inventar ()
    {
        GeneradorDatos gen = new GeneradorDatos();
        gen.generarDatos();
    }
}
